package com.sky.controller;

import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.security.oauth2.client.OAuth2AuthorizedClient;
import org.springframework.security.oauth2.client.annotation.RegisteredOAuth2AuthorizedClient;
import org.springframework.security.oauth2.core.user.OAuth2User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

/**
 * @projectName: netty-cloud
 * @package: com.sky.controller
 * @className: IndexController
 * @author: zhl
 * @description: TODO
 * @date: 2024/4/26 9:26
 * @version: 1.0
 */
@Controller
public class Oauth2LoginController {

    @GetMapping("/")
    public String index(Model model,
                        @RegisteredOAuth2AuthorizedClient OAuth2AuthorizedClient authorizedClient,
                        @AuthenticationPrincipal OAuth2User oAuth2User){
        model.addAttribute("userName",oAuth2User.getName());
        model.addAttribute("clientName",authorizedClient.getClientRegistration().getClientName());
        model.addAttribute("userAttributes",oAuth2User.getAttributes());

        // 以下是gitee中可以获取到的信息
//        id：5556801
//        login：sky_zhl
//        name：朱和龙
//        avatar_url：https://gitee.com/assets/no_portrait.png
//        url：https://gitee.com/api/v5/users/sky_zhl
//        html_url：https://gitee.com/sky_zhl
//        remark：
//        followers_url：https://gitee.com/api/v5/users/sky_zhl/followers
//        following_url：https://gitee.com/api/v5/users/sky_zhl/following_url{/other_user}
//        gists_url：https://gitee.com/api/v5/users/sky_zhl/gists{/gist_id}
//        starred_url：https://gitee.com/api/v5/users/sky_zhl/starred{/owner}{/repo}
//        subscriptions_url：https://gitee.com/api/v5/users/sky_zhl/subscriptions
//        organizations_url：https://gitee.com/api/v5/users/sky_zhl/orgs
//        repos_url：https://gitee.com/api/v5/users/sky_zhl/repos
//        events_url：https://gitee.com/api/v5/users/sky_zhl/events{/privacy}
//        received_events_url：https://gitee.com/api/v5/users/sky_zhl/received_events
//        type：User
//        blog：
//        weibo：
//        bio：
//        public_repos：4
//        public_gists：0
//        followers：1
//        following：1
//        stared：1
//        watched：14
//        created_at：2019-12-17T13:00:37+08:00
//        updated_at：2024-04-25T17:03:58+08:00
//        email：

        return "index";
    }
}
